MoveLinearAbsolute

命令軸群之工具中心點自當前位置進行直線插補運動至指定坐標系之絕對位置。

語法

KsCommandStatus MoveLinearAbsolute(
     int Index,
     int Length,
     double* Position,
     double Velocity,
     double Acceleration,
     double Deceleration,
     double Jerk,
     McCoordSystem CoordSystem,
     McBufferMode BufferMode,
     McTransitionMode TransitionMode,
     double* TransitionParameter
);

參數

Index [in]:軸組索引,索引以零為起點。最多可有 32 個軸組。

Length [in]: 位置 (Position) 陣列長度。

Position [in]:指定坐標系中每個維度的絕對終點位置陣列 [1..N],其中 N 為 64。

Velocity [in]:定義路徑中坐標系路徑的最大速度,永遠為正值,非必要到達,[單位/秒]。

Acceleration [in]:最大加速度,永遠為正值,非必要到達,單位由 McProfileType 類型決定,為 [單位/秒2] 或 [秒]。

Deceleration [in]:最大減速度,永遠為正值,非必要到達,單位由 McProfileType 類型決定,為 [單位/秒2] 或 [秒]。

Jerk [in]:最大加加速度。永遠為正值,非必要到達,單位由 McProfileType 類型決定,為 [單位/秒3] 或 [秒]。

CoordSystem [in]:座標系統,請見 McCoordSystem 類型。

BufferMode [in]:定義如何融合兩功能的速度,請見 McBufferMode 類型。

TransitionMode [in]:插入轉換曲線。請見 McTransitionMode 類型。

TransitionParameter [in]:轉換模式的附加參數,若將 TransitionMode 設為 mcNone,則此參數無效。

回傳值

返回 KsCommandStatus 結構。

備註

範例

VOID MoveAbsolute(INT Group, DOUBLE PositionX, DOUBLE PositionY) {
   DOUBLE Position[2] = { PositionX, PositionY };

   //Start an absolute move.
   KsCommandStatus move = WaitForCommand(30, TRUE, MoveLinearAbsolute(Group, 2, Position, 
      3600, 36000, 36000, 3600000, 
      mcAxisCoordSystem, mcAborting, mcNone, NULL));

   GetGroupActualPosition(Group, mcAxisCoordSystem, mcActualValue, 2, Position);
   RtPrintf("Current Position: %d,%d\n", (int)Position[0], (int)Position[1]);
}

使用需求

  RT Win32
最低支援版本 4.0 4.0
標頭檔 ksmotion.h ksmotion.h
程式庫 KsApi_Rtss.lib KsApi.lib

參見

MoveLinearAdditive

MoveLinearRelative